<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
      <title>GTL - Graph Template Library: edge Class Reference</title>
      <link href="doxygen.css" rel="stylesheet" type="text/css">
  </head>
  <body>
    <p class="links">  
      <a href="../index.html">Home</a> |
      Documentation |
      <a href="../register.html">Download</a> |
      <a href="../platforms.html">Platforms</a> |
      <a href="../refer.html">Projects</a> |      
      <a href="../lists.html">Mailing Lists</a> |
      <a href="../history.html">Version History</a>
    </p>

<!-- Generated by Doxygen 1.5.3 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li class="current"><a href="classes.html"><span>Classes</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul>
</div>
<h1>edge Class Reference</h1><!-- doxytag: class="edge" -->An <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> in a <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a>.  
<a href="#_details">More...</a>
<p>

<p>
<a href="a00141.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#c8047a0d7c1e08a4063be409c6fd0a88">edge</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00020.html">node</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#82ccce41cd94fa893ba389aa5e88be53">source</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00020.html">node</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#713b79cfb3a86a703f7d39ad9e1801c7">target</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#d62516eb40dbee9f57a2078cfd97b4c9">reverse</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#d9e615b1a11bbc88aae2b166d377f354">change_source</a> (<a class="el" href="a00020.html">node</a> n)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#2f797fda0f41412265d793982f2cf953">change_target</a> (<a class="el" href="a00020.html">node</a> n)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="a00020.html">node</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#4a02e493cf05a2295f6eec47eb1498f3">opposite</a> (<a class="el" href="a00020.html">node</a> n) const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#c34fb0fa24087002d4465d8fca6cd23d">is_hidden</a> () const </td></tr>

<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b8b0dbc1b36724e5e4635ac651c218cb"></a><!-- doxytag: member="edge::graph" ref="b8b0dbc1b36724e5e4635ac651c218cb" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#b8b0dbc1b36724e5e4635ac651c218cb">graph</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3700a7180235e9a28534b15d5922de12"></a><!-- doxytag: member="edge::node" ref="3700a7180235e9a28534b15d5922de12" args="" -->
class&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00010.html#3700a7180235e9a28534b15d5922de12">node</a></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
An <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> in a <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a>. <hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="c8047a0d7c1e08a4063be409c6fd0a88"></a><!-- doxytag: member="edge::edge" ref="c8047a0d7c1e08a4063be409c6fd0a88" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">edge::edge           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Default constructor. Creates an invalid <a class="el" href="a00010.html" title="An edge in a graph.">edge</a>. The only way to obtain a valid <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> is through <a class="el" href="a00014.html#cf88b7da133b1a1188ec8de62f0cf246">graph::new_edge</a>. Example: <pre>
   <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> g;
   <a class="el" href="a00020.html" title="A node in a graph.">node</a> n1, n2;
   <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> e;</pre><p>
<pre>   n1 = g.new_node();
   n2 = g.new_node();
   e = g.new_edge(n1, n2);
 </pre><p>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00014.html#cf88b7da133b1a1188ec8de62f0cf246">graph::new_edge</a> </dd></dl>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="82ccce41cd94fa893ba389aa5e88be53"></a><!-- doxytag: member="edge::source" ref="82ccce41cd94fa893ba389aa5e88be53" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00020.html">node</a> edge::source           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the source <a class="el" href="a00020.html" title="A node in a graph.">node</a> of the <a class="el" href="a00010.html" title="An edge in a graph.">edge</a>.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>source </dd></dl>

</div>
</div><p>
<a class="anchor" name="713b79cfb3a86a703f7d39ad9e1801c7"></a><!-- doxytag: member="edge::target" ref="713b79cfb3a86a703f7d39ad9e1801c7" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00020.html">node</a> edge::target           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the target <a class="el" href="a00020.html" title="A node in a graph.">node</a> of the <a class="el" href="a00010.html" title="An edge in a graph.">edge</a>.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>target </dd></dl>

</div>
</div><p>
<a class="anchor" name="d62516eb40dbee9f57a2078cfd97b4c9"></a><!-- doxytag: member="edge::reverse" ref="d62516eb40dbee9f57a2078cfd97b4c9" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void edge::reverse           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Changes the direction of this <a class="el" href="a00010.html" title="An edge in a graph.">edge</a>. 
</div>
</div><p>
<a class="anchor" name="d9e615b1a11bbc88aae2b166d377f354"></a><!-- doxytag: member="edge::change_source" ref="d9e615b1a11bbc88aae2b166d377f354" args="(node n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void edge::change_source           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00020.html">node</a>&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Makes <code>n</code> the source of this <a class="el" href="a00010.html" title="An edge in a graph.">edge</a>. Takes O(1) time.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>&lt;code&gt;n&lt;/code&gt;</em>&nbsp;</td><td>new source </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="2f797fda0f41412265d793982f2cf953"></a><!-- doxytag: member="edge::change_target" ref="2f797fda0f41412265d793982f2cf953" args="(node n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void edge::change_target           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00020.html">node</a>&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Makes <code>n</code> the target of this <a class="el" href="a00010.html" title="An edge in a graph.">edge</a>. Takes O(1) time.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>&lt;code&gt;n&lt;/code&gt;</em>&nbsp;</td><td>new target </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="4a02e493cf05a2295f6eec47eb1498f3"></a><!-- doxytag: member="edge::opposite" ref="4a02e493cf05a2295f6eec47eb1498f3" args="(node n) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="a00020.html">node</a>&amp; edge::opposite           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00020.html">node</a>&nbsp;</td>
          <td class="paramname"> <em>n</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the <a class="el" href="a00020.html" title="A node in a graph.">node</a> opposite to <code>n</code> referring to this <a class="el" href="a00010.html" title="An edge in a graph.">edge</a>.<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>&lt;code&gt;n&lt;/code&gt;</em>&nbsp;</td><td>a <a class="el" href="a00020.html" title="A node in a graph.">node</a> incident to this <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="c34fb0fa24087002d4465d8fca6cd23d"></a><!-- doxytag: member="edge::is_hidden" ref="c34fb0fa24087002d4465d8fca6cd23d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool edge::is_hidden           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns true iff <a class="el" href="a00020.html" title="A node in a graph.">node</a> is hidden.<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true iff <a class="el" href="a00020.html" title="A node in a graph.">node</a> is hidden. </dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00014.html#b2f8520bcac080d73c55228fecc61825">graph::hide_edge</a> <p>
<a class="el" href="a00014.html#2e5426682a0897b9f9104b019970bedc">graph::restore_edge</a> </dd></dl>

</div>
</div><p>
    <p class="links">
      <a href="http://www.uni-passau.de/">University of Passau</a>
      &nbsp;-&nbsp;
      <a href="http://www.fmi.uni-passau.de/">FMI</a>
      &nbsp;-&nbsp;
      <a href="http://www.fmi.uni-passau.de/fmi/lehrstuehle/brandenburg/">Theoretical
	Computer Science</a>
    </p>
  <div class="copyright">
      Design &copy; 2002, 2003 <a href="mailto:raitner@fmi.uni-passau.de">Marcus Raitner</a>,  University of Passau 
  </div>
</body>
</html>
